package com.web.expspringboot.service;

import com.web.expspringboot.entity.ProductSt;

import java.util.Date;
import java.util.List;


public interface ProductService {
    /**
    * @Description: 上传商品，不需要指定商品id，商品id由数据库自动生成
     */
    boolean uploadProduct(ProductSt product);

    boolean deleteProduct(long productId);

    /**
     * @Description: 更新商品信息，无法修改发布时间、商品id和卖家id
     * @Return: 1: 成功， 2： 商品不存在
     */
    int updateProduct(ProductSt product);

    ProductSt getProductById(long productId);

    List<ProductSt> getAllProducts(int startIndex, int length);

    List<ProductSt> getProductsByOwnerId(int startIndex, int length);

    /*
    * @Description: 查询某一时间段内的所有商品
     */
    List<ProductSt> getProductsByTime(Date startTime, Date endTime);

    /**
     * @Description: 验证是否为商品的拥有者
     * @Return: 0: 商品不存在；1: 成功， 2： 不是商品拥有者
     */
    int authProductOwner(long productId, long userId);

    boolean updateProductStatus(long productId, int status);

    boolean resell(long productId);
}
